Socket
Socket
Sign inDemoInstall

cidr-regex

Package Overview
Dependencies
1
Maintainers
1
Versions
27
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    cidr-regex

Regular expression for matching IP addresses in CIDR notation


Version published
Weekly downloads
729K
increased by3.83%
Maintainers
1
Install size
12.9 kB
Created
Weekly downloads
 

Package description

What is cidr-regex?

The 'cidr-regex' npm package provides regular expressions for matching and validating CIDR (Classless Inter-Domain Routing) notation IP addresses, both IPv4 and IPv6. This is useful for network configuration, validation, and parsing tasks.

What are cidr-regex's main functionalities?

Match CIDR Notation

This feature allows you to check if a given string matches the CIDR notation for IPv4 or IPv6 addresses.

const cidrRegex = require('cidr-regex');

const ip = '192.168.0.1/24';
const isMatch = cidrRegex().test(ip);
console.log(isMatch); // true

Extract CIDR Notation

This feature allows you to extract all CIDR notations from a given string.

const cidrRegex = require('cidr-regex');

const text = 'Here is a CIDR: 192.168.0.1/24 and another one: 10.0.0.0/8';
const matches = text.match(cidrRegex());
console.log(matches); // ['192.168.0.1/24', '10.0.0.0/8']

IPv4 and IPv6 Support

This feature provides separate methods for matching IPv4 and IPv6 CIDR notations.

const cidrRegex = require('cidr-regex');

const ipv4 = '192.168.0.1/24';
const ipv6 = '2001:db8::/32';
console.log(cidrRegex.v4().test(ipv4)); // true
console.log(cidrRegex.v6().test(ipv6)); // true

Other packages similar to cidr-regex

Readme

Source

cidr-regex

Regular expression for matching IP addresses in CIDR notation

Usage

$ npm i cidr-regex
import cidrRegex from "cidr-regex";

// Contains a CIDR IP address?
cidrRegex().test("foo 192.168.0.1/24");
//=> true

// Is a CIDR IP address?
cidrRegex({exact: true}).test("foo 192.168.0.1/24");
//=> false

cidrRegex.v6({exact: true}).test("1:2:3:4:5:6:7:8/64");
//=> true

// Extract CIDRs from string
"foo 192.168.0.1/24 bar 1:2:3:4:5:6:7:8/64 baz".match(cidrRegex());
//=> ["192.168.0.1/24", "1:2:3:4:5:6:7:8/64"]

API

cidrRegex([options])

Returns a regex for matching both IPv4 and IPv6 CIDR IP addresses.

cidrRegex.v4([options])

Returns a regex for matching IPv4 CIDR IP addresses.

cidrRegex.v6([options])

Returns a regex for matching IPv6 CIDR IP addresses.

options.exact

Type: boolean
Default: false (Matches any CIDR IP address in a string)

Only match an exact string. Useful with RegExp#test() to check if a string is a CIDR IP address.

  • ip-bigint - Convert IPv4 and IPv6 addresses to native BigInt and vice-versa
  • ip-regex - Regular expression for matching IP addresses
  • is-cidr - Check if a string is an IP address in CIDR notation
  • is-ip - Check if a string is an IP address
  • cidr-tools - Tools to work with IPv4 and IPv6 CIDR network lists

License

© silverwind, distributed under BSD licence

Based on previous work by Felipe Apostol

FAQs

Last updated on 23 May 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc